Heap 根據維基定義:給定堆積中任意節點 P 和 C,若 P 是 C 的母節點,那麼 P 的值會小於等於 C 的值
但其實就是一種特殊的完全二元樹。
而 binary heap 又可以視為 nearly complete binary tree
Complete binary tree 表示若樹的高度為 3,則有 2^(3+1) − 1 個點
Nearly complete binary tree 則表示所有元素由上至下,由左至右
Heap 的種類又分兩種:Max 跟 min
Max 表示 parent ≥ both children.
Min 表示 parent ≤ either children.
與 binary search tree 不同的地方:heap 中並沒有規定左子樹必須小於右子樹,如圖:
時間要到了,待續XD